home *** CD-ROM | disk | FTP | other *** search
- #! /bin/sh
- # This is a shell archive, meaning:
- # 1. Remove everything above the #! /bin/sh line.
- # 2. Save the resulting text in a file.
- # 3. Execute the file with /bin/sh (not csh) to create:
- # eclgo.sty
- # eclgo10.mf
- # go.tex
- # readme
- # This archive created: Sat Jun 1 12:44:01 1991
- export PATH; PATH=/bin:/usr/bin:$PATH
- if test -f 'eclgo.sty'
- then
- echo shar: "will not over-write existing file 'eclgo.sty'"
- else
- cat << \SHAR_EOF > 'eclgo.sty'
- % eclgo.sty by Hideki ISOZAKI Apr. 27, 1991, May 6, 1991
-
- \newcount\go@base
- \newdimen\go@size
- \newif\iffromwhite
- \fromwhitefalse
- \font\goftn=eclgo10 scaled 1440
- \font\gotwl=eclgo10 scaled 1200
- \font\goten=eclgo10
- \@addfontinfo\@xivpt{\def\gf{\goftn}}
- \@addfontinfo\@xiipt{\def\gf{\gotwl}}
- \@addfontinfo\@xpt{\def\gf{\goten}}
- \@normalsize
-
- % <- pillar
- % |
- % hand -> --*-- <- hand
- % |
- % <- pillar
- %
- \def\go@hand{\raise.5\go@size\hbox{%
- \vrule\@depth.02\go@size\@height.02\go@size\@width.5\go@size}}
-
- \def\go@hands{\raise.5\go@size\hbox{%
- \vrule\@depth.02\go@size\@height.02\go@size\@width\go@size}}
-
- \def\go@Hand{\raise.5\go@size\hbox{%
- \vrule\@depth.03\go@size\@height.03\go@size\@width.5\go@size}}
-
- \def\go@Hands{\raise.5\go@size\hbox{%
- \vrule\@depth.03\go@size\@height.03\go@size\@width\go@size}}
-
- \def\go@pillar{\hbox to \z@{\hss
- \vrule\@depth\z@\@height.5\go@size\@width.04\go@size\hss}}
-
- \def\go@pillars{\hbox to \z@{\hss
- \vrule\@depth\z@\@height\go@size\@width.04\go@size\hss}}
-
- \def\go@Pillar{\hbox to \z@{\hss
- \vrule\@depth\z@\@height.5\go@size\@width.06\go@size\hss}}
-
- \def\go@Pillars{\hbox to \z@{\hss
- \vrule\@depth\z@\@height\go@size\@width.06\go@size\hss}}
-
- \def\go@space{\kern.5\go@size}
-
- \def\go@strut{\vrule\@height\go@size\@width\z@\@depth\z@}
-
- \def\go@cross{\rlap{\go@space\go@pillars}\go@hands}
-
- \def\go@mark{\rlap{\go@space\raise.5\go@size
- \hbox to\z@{\makebox(0,0){$\bullet$}}}\go@cross}
-
- \def\go@left{\go@space\go@Pillars\go@hand}
-
- \def\go@right{\go@hand\go@Pillars\go@space}
-
- \def\go@top{\go@strut\rlap{\go@space\go@pillar}\go@Hands}
-
- \def\go@bot{\go@strut\rlap{\go@space\raise.5\go@size\go@pillar}\go@Hands}
-
- \def\go@topleft{\go@strut\go@space\go@Pillar\go@Hand}
-
- \def\go@topright{\go@strut\go@Hand\go@Pillar\go@space}
-
- \def\go@botleft{\go@strut\go@space\raise.5\go@size\go@Pillar\go@Hand}
-
- \def\go@botright{\go@strut\go@Hand\raise.5\go@size\go@Pillar\go@space}
-
- \def\go@corner{%
- \if\go@lr l%
- \if\go@tb t%
- \go@topleft\gdef\go@lr{r}%
- \else
- \go@botleft
- \fi
- \else
- \if\go@tb t%
- \go@topright\gdef\go@lr{r}%
- \else
- \go@botright
- \fi
- \fi}
-
- \def\go@vbound{\if\go@lr l\go@left\gdef\go@lr{r}\else\go@right\fi}
- \def\go@hbound{\if\go@tb t\go@top\else\go@bot\fi}
-
- {\obeyspaces\gdef\go@sp{\let =;}}
- {\obeylines\gdef\go@ln{\let^^M=:}}
-
- \def\goban{\iffromwhite
- \def\go@odd{60 }\def\go@even{0 }\else
- \def\go@odd{0 }\def\go@even{60 }\fi\go@ban}
-
- \def\go@ban{\let\go@end=\end\let\end=,%
- \leavevmode\vbox\bgroup\offinterlineskip\gf
- \settowidth{\go@size}{\char0}%
- \obeyspaces\go@sp\gdef\go@lr{l}\gdef\go@tb{t}%
- \obeylines\go@ln\hbox\bgroup\go@check}
-
- \def\go@elem#1#2#3{\go@set#1#2#3\go@check}
-
- \def\go@check#1{\def\go@c{#1}\xdef\go@quad{}%
- \if\go@c:%
- \egroup\hbox\bgroup\gdef\go@lr{l}%
- \let\go@next=\go@check
- \else
- \if\go@c;%
- \let\go@next=\go@elem
- \else
- \egroup\egroup\let\go@next=\go@end
- \fi
- \fi
- \go@next}
-
- \def\gostone{\begingroup\obeyspaces\go@sp\go@stone}
-
-
- \def\go@stone#1{\leavevmode\iffromwhite
- \def\go@odd{60 }\def\go@even{0 }\lower.4ex\hbox{\gf\go@set#1}\else
- \def\go@odd{0 }\def\go@even{60 }\lower.4ex\hbox{\gf\go@set#1}\fi
- \endgroup}
-
-
- \def\go@set#1#2#3{%
- \if#2;\if#3.\go@cross\gdef\go@tb{b}%
- \else\if#3+\go@mark\gdef\go@tb{b}%
- \else\if#3*\go@corner
- \else\if#3!\go@vbound
- \else\if#3-\go@hbound
- \else\if#3b\hbox{\char120}\relax
- \else\if#3w\hbox{\char121}\relax
- \else \ifodd#3\go@base=\go@odd\relax\else\go@base=\go@even\fi
- \hbox{\advance\go@base by #3\char\go@base}%
- \fi\fi\fi\fi\fi\fi\fi
- \else
- \go@setnum#1#2#3%
- \fi\gdef\go@lr{r}}
-
- \def\go@setnum#1#2#3{%
- \ifodd#3\go@base=\go@odd\else\go@base=\go@even\fi
- \if#1;%
- \hbox{\advance\go@base by #2\advance\go@base by 10\char\go@base}%
- \hbox{\advance\go@base by #3\advance\go@base by 20\char\go@base}%
- \else
- \hbox{\advance\go@base by #1\advance\go@base by 30\char\go@base}%
- \hbox{\advance\go@base by #2\advance\go@base by 40\char\go@base}%
- \hbox{\advance\go@base by #3\advance\go@base by 50\char\go@base}%
- \fi}
- % <\hbox>es circumscribing each stone (fragment) are unnecessary.
- % However, I had to use dvi2vdu which had a bug of setchar
- % when I was developing this style file.
-
-
- SHAR_EOF
- fi
- if test -f 'eclgo10.mf'
- then
- echo shar: "will not over-write existing file 'eclgo10.mf'"
- else
- cat << \SHAR_EOF > 'eclgo10.mf'
- % eclgo10.mf by Hideki ISOZAKI Apr. 27, 1991
- mode_setup;
-
- def andonly = cull currentpicture dropping (-infinity,1) enddef;
- def clipit = fill (-lap#,0)--(w+lap#,0)--(w+lap#,h)--(-lap#,h)--cycle; andonly; enddef;
- def atcenter = shifted (.5h,.5h) enddef;
- def hcirc = fullcircle scaled h enddef;
-
- hwc=1/6/sqrt(2); % diameter --> half width of a char
-
- u#:=10pt#;
- lap#:=0.6pt#;
-
- path num[];
- pair p[];
-
- % ------------------------
- % | |
- % | **************** |
- % | *** PATH DATA ** |
- % | * / ORIGIN ***** |
- % | / ************* |
- % |xxxx ************** |
- % |xxxx |
- % ------------------------
- % x... p0, *... p1, whole... 2p0+p1
-
- p0=(2,1); % overshoot margin (xxx region)
- p1=(4,8); % width & height of *** region
- p2=-0.5(2p0+p1); % centering
- p3=p0+p2; % centering after adding overshoot margin
-
- (xp,yp)=-2sqrt(2)*p2; % diameter --> edge length
-
- num[0]=((2,0)..(4,4)..(2,8)..(0,4)..cycle) shifted p3;
- num[1]=((1,7)--(2,8)--(2,0)) shifted p3;
- num[2]=((0,6)..(2,8)..(4,6){dir -90}..{dir -90}(0,0)--(4,0)) shifted p3;
- num[3]=((0,6)..(2,8)..(4,7)..(4,5)..(2,4)&
- (2,4)..(4,3)..(4,1)..(2,0)..(0,2)) shifted p3;
- num[4]=((4,2)--(0,2)--(3,8)--(3,0)) shifted p3;
- num[5]=((4,8)--(0,8)--(0,4)...(2,5)..(4,2)..(2,0)..(0,1)) shifted p3;
- num[6]=((4,7)..(2,8){dir 180}..(0,4){dir 270}..(2,0){dir 360}..(4,2){dir 450}
- ..(2,5){dir 540}..{dir 630}(0,2)) shifted p3;
- num[7]=((0,6)--(0,8)--(4,8)--(4,7)..{dir -90}(2,0)) shifted p3;
- num[8]=((2,0)..(4,2)..(2,4)..(0,6)..(2,8)..(4,6)..(2,4)..(0,2)..cycle)
- shifted p3;
- num[9]=num[6] rotated 180;
-
- extra_beginchar := "pickup pencircle scaled 0.7pt;";
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- % White on Black
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
- % One digit
-
- for c=0 upto 9:
- beginchar(c,u#,u#,0);
- fill hcirc atcenter; cullit;
- undraw num[c]
- xscaled (w/xp) yscaled (h/yp) atcenter;
- endchar;
- endfor;
-
- % Two digits left part
-
- for c=0 upto 9:
- beginchar(c+10,.5u#,u#,0);
- fill hcirc atcenter; clipit;
- undraw num[c] shifted (xpart p2,0)
- xscaled (.5h/xp) yscaled (h/yp) atcenter;
- endchar;
- endfor;
-
- % Two digits right part
-
- for c=0 upto 9:
- beginchar(c+20,.5u#,u#,0);
- fill hcirc shifted (0,.5h); clipit;
- undraw num[c] shifted (-xpart p2,0)
- xscaled (.5h/xp) yscaled (h/yp) shifted (0,.5h);
- endchar;
- endfor;
-
- % Three digits left part
-
- for c=0 upto 9:
- beginchar(c+30,.5u#*(1-2hwc),u#,0);
- fill hcirc atcenter; clipit;
- undraw num[c] shifted (2xpart p2,0)
- xscaled (h/3/xp) yscaled (h/yp) atcenter;
- endchar;
- endfor;
-
-
- % Three digits center part
-
- for c=0 upto 9:
- beginchar(c+40,u#*2hwc,u#,0);
- fill hcirc shifted (h*hwc,.5h); clipit;
- undraw num[c]
- xscaled (h/3/xp) yscaled (h/yp) shifted (h*hwc,.5h);
- endchar;
- endfor;
-
- % Three digits right part
-
- for c=0 upto 9:
- beginchar(c+50,.5u#*(1-2hwc),u#,0);
- fill hcirc shifted (-h*hwc,.5h); clipit;
- undraw num[c] shifted (-2xpart p2,0)
- xscaled (h/3/xp) yscaled (h/yp) shifted (-h*hwc,.5h);
- endchar;
- endfor;
-
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- % Black on White
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- % One digit
-
- for c=0 upto 9:
- beginchar(c+60,u#,u#,0);
- draw hcirc atcenter; cullit;
- fill hcirc atcenter; andonly;
- draw num[c]
- xscaled (w/xp) yscaled (h/yp) atcenter;
- endchar;
- endfor;
-
- % Two digits left part
-
- for c=0 upto 9:
- beginchar(c+70,.5u#,u#,0);
- draw hcirc atcenter; cullit;
- fill hcirc atcenter; andonly; clipit;
- draw num[c] shifted (xpart p2,0)
- xscaled (.5h/xp) yscaled (h/yp) atcenter;
- endchar;
- endfor;
-
- % Two digits right part
-
- for c=0 upto 9:
- beginchar(c+80,.5u#,u#,0);
- draw hcirc shifted (0,.5h); cullit;
- fill hcirc shifted (0,.5h); andonly; clipit;
- draw num[c] shifted (-xpart p2,0)
- xscaled (.5h/xp) yscaled (h/yp) shifted (0,.5h);
- endchar;
- endfor;
-
- % Three digits left part
-
- for c=0 upto 9:
- beginchar(c+90,.5u#*(1-2hwc),u#,0);
- draw hcirc atcenter; cullit;
- fill hcirc atcenter; andonly; clipit;
- draw num[c] shifted (2xpart p2,0)
- xscaled (h/3/xp) yscaled (h/yp) atcenter;
- endchar;
- endfor;
-
-
- % Three digits center part
-
- for c=0 upto 9:
- beginchar(c+100,u#*2hwc,u#,0);
- draw hcirc shifted (h*hwc,.5h); cullit;
- fill hcirc shifted (h*hwc,.5h); andonly; clipit;
- draw num[c]
- xscaled (h/3/xp) yscaled (h/yp) shifted (h*hwc,.5h);
- endchar;
- endfor;
-
- % Three digits right part
-
- for c=0 upto 9:
- beginchar(c+110,.5u#*(1-2hwc),u#,0);
- draw hcirc shifted (-h*hwc,.5h); cullit;
- fill hcirc shifted (-h*hwc,.5h); andonly; clipit;
- draw num[c] shifted (-2xpart p2,0)
- xscaled (h/3/xp) yscaled (h/yp) shifted (-h*hwc,.5h);
- endchar;
- endfor;
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- % Stones without numbers
- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
- beginchar(120,u#,u#,0);
- fill hcirc atcenter;
- endchar;
-
- beginchar(121,u#,u#,0);
- draw hcirc atcenter; cullit;
- fill hcirc atcenter; andonly;
- endchar;
-
- end
- SHAR_EOF
- fi
- if test -f 'go.tex'
- then
- echo shar: "will not over-write existing file 'go.tex'"
- else
- cat << \SHAR_EOF > 'go.tex'
- % go.tex by Hideki ISOZAKI Apr. 27, 1991
- \documentstyle[eclgo]{article}
-
- \begin{document}
-
- \fromwhitetrue
- \gostone{ w} \gostone{911} \gostone{ 32}
-
- \noindent
- \begin{goban}
- * w - w - - 13 - - - - 4 - - - - - - *
- ! 32 b . 25 . + . 54 . 49 . 28 . + . . . !
- ! b . 86 45 7 . 14 . 30 . . . . . 127 . . !
- * - - - - 182 - - - - - - - - - - - - *
- \end{goban}
-
- \fromwhitefalse\Large
- \gostone{ w} \gostone{911} \gostone{ 32}
-
- \noindent
- \begin{goban}
- * w - w - - 13 - - - - 4 - - - - - - *
- ! 32 b . 25 . + . 54 . 49 . 28 . + . . . !
- ! b . 86 45 7 . 14 . 30 . . . . . 127 . . !
- * - - - - 182 - - - - - - - - - - - - *
- \end{goban}
- \end{document}
- SHAR_EOF
- fi
- if test -f 'readme'
- then
- echo shar: "will not over-write existing file 'readme'"
- else
- cat << \SHAR_EOF > 'readme'
- This package is by: isozaki@penguin.stanford.edu
-
-
- SHAR_EOF
- fi
- exit 0
- # End of shell archive
-